package cn.six1943.deepchat.module.ai.dal.dataobject.model;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 模型 DO
 *
 * @author at1943
 */
@TableName("ai_model")
@KeySequence("ai_model_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ModelDO extends BaseDO {

    /**
     * 主键
     */
    @TableId
    private Long id;
    /**
     * 数据类型
     */
    private Integer dataType;
    /**
     * 提供商密钥
     */
    private Long keyId;
    /**
     * 提供商
     */
    private String provider;
    /**
     * 名称
     */
    private String name;
    /**
     * 标识
     */
    private String code;
    /**
     * 图标
     */
    private String avatar;
    /**
     * 嵌入
     */
    private Boolean embedding;
    /**
     * 视觉识别
     */
    private Boolean vision;
    /**
     * 函数调用
     */
    private Boolean functioncall;
    /**
     * 深度思考
     */
    private Boolean reasoning;
    /**
     * 联网搜索
     */
    private Boolean search;
    /**
     * 重排
     */
    private Boolean rerank;
    /**
     * 最大上下文token
     */
    private Integer maxTokens;
    /**
     * 最大输出token
     */
    private Integer maxOutput;
    /**
     * 向量维度
     */
    private Integer dimension;
    /**
     * 最大行数
     */
    private Integer maxLines;
    /**
     * 单行最大处理Token数
     */
    private Integer maxLineTokens;
    /**
     * 描述
     */
    private String remark;
    /**
     * 排序
     */
    private Integer sort;
    /**
     * 创建部门
     */
    private Long createDept;
    /**
     * 状态
     */
    private Integer status;

}